<?
	/* Se asegura que el archivo es incluido por el index */
		defined( 'LOAD_MODULE_ACTION' ) or die( 'No esta permitido el acceso directo a ' . __FILE__ );  
	/* Cuando se hace el include del archivo automaticamente crea un objeto y lo guarda en una variable temporal */
		$this->oTmpObject = new CasoUso_exe( $this );
		
	class CasoUso_exe extends Exe
	{
	function CasoUso_exe( &$oModule )
		{
			$this->oModule = &$oModule;
		}
	// MODIFICAR_CASO_DE_USO
  function update()
    {
			// Convierte a variables los datos del Formulario asociado a la accion
			$oForm = $this->oModule->loadClass( 'caso_uso_frm' );
			extract( $oForm->getFieldArray() );
			// Modifica el Registro
			$this->oModule->oDatabase->update("stCasoUso", 
								"cDescripcion", $cDescripcion, 
								"cPreCondicion", $cPreCondicion,
								"cPostCondicion", $cPostCondicion, 
								"cdCasoUso", $cdCasoUso, 
								"WHERE",  "ncCasoUso", $ncCasoUso );        	
			$oForm->reset();
    }    
	// AGREGAR_CASO_DE_USO
  function insert()
    {
			// Convierte a variables los datos del Formulario asociado a la accion
			$oForm = $this->oModule->loadClass( 'caso_uso_frm' );
			extract( $oForm->getFieldArray() );
			// Busca la proxima clave
			$ncCasoUso = $this->oModule->oDatabase->nextKey("stCasoUso", "ncCasoUso" );
			// Agrega el Registro
			$this->oModule->oDatabase->insert("stCasoUso", 
								"cDescripcion", $cDescripcion, 
								"cPreCondicion", $cPreCondicion,
								"cPostCondicion", $cPostCondicion, 
								"cdCasoUso", $cdCasoUso, 
								"ncCasoUso", $ncCasoUso );
			$oForm->reset();
		}
	// ELIMINAR_CASO_DE_USO
	function delete()
		{
			$ncCasoUso 	= getParam('ncCasoUso' );		
			// Elimina el Registro
			$this->oModule->oDatabase->delete("stCasoUso", "ncCasoUso", $ncCasoUso  );
		}
	}
?>
